| API Documentation |  |

- MAIN PAGE
- NAMESPACES
- CLASSES

TargetOperations.h
1 // TargetOperations.h
3 //
5
6 namespace nkGraphics
7 {
14 class TargetOperations : public nkExport::Exportable
15 {
16 public :
17
18
25 TargetOperations (System* system) noexcept ;
29 TargetOperations (const TargetOperations&) = delete ;
33 virtual ~TargetOperations () ;
34
35 // Getters
39 nkMemory::StringView getName () const ;
40
41 // Setters
47 void setName (nkMemory::StringView name) ;
48
49 // Pass management
58 virtual ClearTargetsPass* addClearTargetsPass (unsigned int index = -1) ;
67 virtual ComputePass* addComputePass (unsigned int index = -1) ;
76 virtual InstancingPass* addInstancingPass (unsigned int index = -1) ;
85 virtual MonoMaterialPass* addMonoMaterialPass (unsigned int index = -1) ;
94 virtual PostProcessPass* addPostProcessPass (unsigned int index = -1) ;
103 virtual RaytracingPass* addRaytracingPass (unsigned int index = -1) ;
112 virtual RenderScenePass* addRenderScenePass (unsigned int index = -1) ;
116 unsigned int getPassCount () const ;
123 Pass* getPass (unsigned int index) const ;
129 virtual void deletePass (unsigned int index) ;
136 virtual void changePassOrder (unsigned int fromIndex, unsigned int toIndex) ;
137
145 virtual void setColorTarget (const TargetDescriptor& targetDesc, unsigned int outputIndex = 0) ;
152 virtual void addColorTarget (const TargetDescriptor& targetDesc) ;
161 virtual void changeColorTargetOrder (unsigned int fromIndex, unsigned int toIndex) ;
165 virtual void removeColorTarget (unsigned int index) ;
169 virtual void setDepthTarget (Texture* target) ;
173 unsigned int getColorTargetCount () const ;
178 Texture* getColorTarget (unsigned int index) const ;
185 int getColorTargetRenderIndex (unsigned int index) const ;
189 Texture* getDepthTarget () const ;
196 virtual void setToBackBuffer (bool val, unsigned int indexInArray = 0) ;
200 bool isToBackBuffer () const ;
205 unsigned int getBackBufferViewIndex () const ;
211 virtual void setToChainDepthBuffer (bool val) ;
215 bool isToChainDepthBuffer () const ;
216
223 virtual void setOverloadedViewport (Viewport* value) ;
227 Viewport* getOverloadedViewport () const ;
228
233 virtual void execute () = 0 ;
234
240 virtual void exportClassToTree (nkExport::Node* rootNode) override ;
246 virtual void importClassFromTree (nkExport::Node* rootNode) override ;
253 void processColorTargetObjectNode (nkExport::Node* targetNode) ;
260 void processPassObjectNode (nkExport::Node* passNode) ;
261
262 // Operators
266 TargetOperations& operator= (const TargetOperations&) = delete ;
267 } ;
268 }
nkGraphics::TargetOperations::deletePass
virtual void deletePass(unsigned int index)
nkGraphics::TargetOperations::~TargetOperations
virtual ~TargetOperations()
nkGraphics::InstancingPass
A pass doing an instanced draw, during which one mesh is drawn X times, in one go.
Definition: InstancingPass.h:15
nkGraphics::TargetOperations::execute
virtual void execute()=0
nkGraphics::System
Main interface with the component system.
Definition: System.h:14
nkGraphics::Texture
A texture used for rendering, hosted on GPU.
Definition: Texture.h:35
nkExport::Exportable
An interface to define objects that can be exported using this component.
Definition: Exportable.h:15
nkGraphics::MonoMaterialPass
A pass rendering the scene, using only one shader to render all the meshes enqueued.
Definition: MonoMaterialPass.h:16
nkGraphics::TargetOperations::getPassCount
unsigned int getPassCount() const
nkGraphics::Viewport
Holds all the information needed about a viewport.
Definition: Viewport.h:14
nkGraphics::TargetOperations::addRenderScenePass
virtual RenderScenePass * addRenderScenePass(unsigned int index=-1)
nkGraphics::TargetOperations::processPassObjectNode
void processPassObjectNode(nkExport::Node *passNode)
nkGraphics::TargetOperations::processColorTargetObjectNode
void processColorTargetObjectNode(nkExport::Node *targetNode)
nkGraphics::TargetOperations::getBackBufferViewIndex
unsigned int getBackBufferViewIndex() const
nkGraphics::TargetOperations::setToBackBuffer
virtual void setToBackBuffer(bool val, unsigned int indexInArray=0)
nkGraphics::TargetOperations
Describes a target operation set.
Definition: TargetOperations.h:15
nkGraphics::RenderScenePass
A pass rendering render queues.
Definition: RenderScenePass.h:15
nkGraphics::ClearTargetsPass
A clear target pass, during which some targets are cleared.
Definition: ClearTargetsPass.h:15
nkGraphics::TargetOperations::importClassFromTree
virtual void importClassFromTree(nkExport::Node *rootNode) override
nkGraphics::TargetOperations::exportClassToTree
virtual void exportClassToTree(nkExport::Node *rootNode) override
nkGraphics::TargetOperations::addRaytracingPass
virtual RaytracingPass * addRaytracingPass(unsigned int index=-1)
nkGraphics::TargetOperations::getName
nkMemory::StringView getName() const
nkGraphics::ComputePass
A compute pass, during which a compute dispatch is launched.
Definition: ComputePass.h:14
nkGraphics::PostProcessPass
A post processing pass, during which a shader is used to render a quad fitting on the screen.
Definition: PostProcessPass.h:15
nkExport::Node
A node in the tree structure representing the data to export / import.
Definition: Node.h:42
nkGraphics::TargetOperations::addClearTargetsPass
virtual ClearTargetsPass * addClearTargetsPass(unsigned int index=-1)
nkGraphics::TargetOperations::addPostProcessPass
virtual PostProcessPass * addPostProcessPass(unsigned int index=-1)
nkGraphics::Pass
The base for a pass within a TargetOperations.
Definition: Pass.h:15
nkGraphics::TargetOperations::getPass
Pass * getPass(unsigned int index) const
nkGraphics::TargetOperations::getColorTargetRenderIndex
int getColorTargetRenderIndex(unsigned int index) const
nkGraphics::TargetOperations::addColorTarget
virtual void addColorTarget(const TargetDescriptor &targetDesc)
nkGraphics::TargetOperations::getDepthTarget
Texture * getDepthTarget() const
nkGraphics::TargetOperations::setDepthTarget
virtual void setDepthTarget(Texture *target)
nkGraphics::TargetOperations::changePassOrder
virtual void changePassOrder(unsigned int fromIndex, unsigned int toIndex)
nkMemory::StringView
Class holding information about a string, with no ownership over the data.
Definition: StringView.h:22
nkGraphics::TargetOperations::changeColorTargetOrder
virtual void changeColorTargetOrder(unsigned int fromIndex, unsigned int toIndex)
nkGraphics::TargetOperations::getColorTargetCount
unsigned int getColorTargetCount() const
nkGraphics::RaytracingPass
A raytracing pass. Dispatches rays, using hardware acceleration.
Definition: RaytracingPass.h:15
nkGraphics::TargetOperations::setToChainDepthBuffer
virtual void setToChainDepthBuffer(bool val)
nkGraphics::TargetOperations::operator=
TargetOperations & operator=(const TargetOperations &)=delete
nkGraphics::TargetOperations::TargetOperations
TargetOperations(System *system) noexcept
nkGraphics::TargetOperations::addMonoMaterialPass
virtual MonoMaterialPass * addMonoMaterialPass(unsigned int index=-1)
nkGraphics::TargetOperations::setName
void setName(nkMemory::StringView name)
nkGraphics::TargetOperations::addComputePass
virtual ComputePass * addComputePass(unsigned int index=-1)
nkGraphics::TargetOperations::isToChainDepthBuffer
bool isToChainDepthBuffer() const
nkGraphics::TargetOperations::setColorTarget
virtual void setColorTarget(const TargetDescriptor &targetDesc, unsigned int outputIndex=0)
nkGraphics::TargetOperations::removeColorTarget
virtual void removeColorTarget(unsigned int index)
nkGraphics::TargetOperations::getOverloadedViewport
Viewport * getOverloadedViewport() const
nkGraphics::TargetOperations::addInstancingPass
virtual InstancingPass * addInstancingPass(unsigned int index=-1)
nkGraphics
Encompasses all API of component NilkinsGraphics.
Definition: BoundingBox.h:7
nkGraphics::TargetOperations::getColorTarget
Texture * getColorTarget(unsigned int index) const
nkGraphics::TargetOperations::setOverloadedViewport
virtual void setOverloadedViewport(Viewport *value)
nkGraphics::TargetOperations::isToBackBuffer
bool isToBackBuffer() const
nkGraphics::TargetOperations::TargetOperations
TargetOperations(const TargetOperations &)=delete
nkGraphics::TargetDescriptor
Describes how a target should be addressed during rendering.
Definition: TargetDescriptor.h:14